<?php

  abstract class SequenceCategory extends Category
  {
    public function __construct($name, Dice $dice)
    {
      parent::__construct($name);

      if ($dice->getNumInOrder() >= $this->getNumRequired()) {
        $this->score = $this->getWinValue();
      } else {
        $this->score = 0;
      }
    }
    
    abstract protected function getNumRequired();
    
    abstract protected function getWinValue();
  }